<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div id="app">
 <todo>
     <todo-title slot="todo-title" v-bind:title="title"></todo-title>
     <todo-items slot="todo-items" v-for="(itemtestfor,index) in todoItems" v-bind:item1 ="itemtestfor" v-bind:index ="index" v-on:remove="removeitems(index)" ></todo-items>
 </todo>
</div>
</body>
<script src="vue.js"></script>

<script>

    Vue.component("todo",{
        template:
            '<div>'+
                '<slot name="todo-title" > </slot>'+
                '<ul>'+
                    '<slot name="todo-items"> </slot>'+
                '</ul>'+
            '</div>'
    });

    Vue.component("todo-title",{
        props:['title'],
        template:'<div>{{title}}</div>'
    });

    Vue.component("todo-items",{
        props:['item1','index'],
        template:'<li> {{index}}---{{item1}} <button @click="remove">delete</button> </li> ',
        methods: {
             remove: function (index){
                 //自定义一个事件
                 this.$emit("remove",index)
             }
        }
    });

    var vm = new Vue({
        el: '#app',
        data: {
            title:"何智勤的书籍",
            todoItems: ['狂神说Java', '狂神说运维', '狂神说前端'],
        },
        methods: {

            sayhi: function (){
                alert('hello')
            },

            removeitems: function (index){
                console.log("删除了"+ this.todoItems[index] +"OK");
                this.todoItems.splice(index,1); //一次删除一个元素
            }

        }
    });
</script>
</html>